Skip to content

kpb: add support 24/24bit buffering for 1-6 channels - #6785

Merged
mwasko merged 4 commits into
thesofproject:mainfrom
fkwasowi:prv-fkwasowi-kpb_24_32_6ch
Jan 30, 2023
Merged

mwasko merged 4 commits into
thesofproject:mainfrom
fkwasowi:prv-fkwasowi-kpb_24_32_6ch

Conversation

@fkwasowi

Copy link
Copy Markdown
Contributor

FW infrastructure shall support buffering of historic data from 1ch up to 6 channels 24bit samples in 24bit container.
KPB module shall support on input 3 to 6 channels (1-4 mics + 2ch reference), 16kHz, 16/24bit . Output pins shall support:
For buffered pin same number of channels as on input, 16kHz, bit depth same as on input.

@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch 2 times, most recently from 41e967d to f3f54cf Compare December 13, 2022 11:53
@fkwasowi
fkwasowi requested a review from iganakov December 13, 2022 11:59
Comment thread src/audio/kpb.c Outdated

@lgirdwood lgirdwood left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, mostly minor stuff - needs hifi review

Comment thread src/platform/meteorlake/include/platform/lib/memory.h Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
Comment thread src/audio/kpb.c Outdated
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from f3f54cf to 1ba44a1 Compare December 20, 2022 10:27
Comment thread src/audio/kpb.c Outdated
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch 5 times, most recently from e5ace53 to 78fe06b Compare January 2, 2023 08:49
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 78fe06b to 8babe7f Compare January 2, 2023 08:51
Comment thread src/platform/meteorlake/include/platform/lib/memory.h Outdated
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch 4 times, most recently from 72d2762 to 9748631 Compare January 2, 2023 11:03
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch 3 times, most recently from 15f6e17 to 2c12606 Compare January 16, 2023 16:34

@lyakh lyakh left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please also at least lightly run some tests with a gcc build

@mwasko

mwasko commented Jan 18, 2023

Copy link
Copy Markdown
Contributor

SOFCI TEST

@mwasko mwasko left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like there is some KD test failure in TGL XTOS IPC3 configuration. @fkwasowi please take a look at this.

@abonislawski

Copy link
Copy Markdown
Member

Please run tests with both standard and HiFi4 paths

@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 2c12606 to beb458b Compare January 23, 2023 10:35
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch 2 times, most recently from f4c1c1e to 501bcb9 Compare January 24, 2023 12:39
@fkwasowi

fkwasowi commented Jan 25, 2023 •

Copy link
Copy Markdown
Contributor Author

It looks like there is some KD test failure in TGL XTOS IPC3 configuration. @fkwasowi please take a look at this.

The multiple-pause-resume-5.sh test fails, but this is independent of the PR change, as there is no kpb module in the topology in this test. This test fails randomly on different platforms. Here 3 other recent opened PRs with the same problem:
https://sof-ci.01.org/sofpr/PR6988/build3498/devicetest/index.html
https://sof-ci.01.org/sofpr/PR6984/build3486/devicetest/index.html
https://sof-ci.01.org/sofpr/PR6988/build3498/devicetest/index.html

Last commits were merged despite the same failing test:
#6972 (,,hit once in https://sof-ci.01.org/sofpr/PR6974/build3485/devicetest/index.html?model=ADLP_RVP_SDW_IPC4ZPH&testcase=multiple-pause-resume-5 . Otherwise good, so proceeding with merge.")
#6974 (,,One failure in https://sof-ci.01.org/sofpr/PR6972/build3478/devicetest/index.html caused by open issue #6864
Rest is good, so proceeding with merge.")

@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 501bcb9 to 6372812 Compare January 25, 2023 08:46
@fkwasowi
fkwasowi requested a review from mwasko January 25, 2023 15:16
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 6372812 to 60e2b1a Compare January 26, 2023 09:57

@abonislawski abonislawski left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the problem was in kd tgl test but looks like its okay after yesterday push.
Pause-resume is fine for this PR

Comment thread src/include/sof/audio/kpb.h Outdated
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 60e2b1a to 7b1a947 Compare January 26, 2023 10:13
@fkwasowi
fkwasowi requested a review from abonislawski January 26, 2023 10:18
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 7b1a947 to 11b31e3 Compare January 26, 2023 10:44
@kv2019i

kv2019i commented Jan 26, 2023

Copy link
Copy Markdown
Collaborator

The multiple-pause failure is likely not related to this PR:
[ 616.962191] kernel: sof-audio-pci-intel-tgl 0000:00:1f.3: ipc timed out for 0x13000004|0x1
... but is basicly this #6864

@abonislawski @fkwasowi let me know when this is ready and should we ignore Michal's -1 to do merge this week.

@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from 11b31e3 to a1cec9e Compare January 26, 2023 11:48
FW infrastructure shall support buffering of historic data
from 1ch up to 6 channels 24bit samples in 24bit container.
For this reason, the heap should be extended.Increase HEAPMEM_SIZE
by 0x90000 because for audio format 16000Hz/6ch/24bit
history_buffer_size = 16 * 6 * 3 * 2100s = 604800 bytes (0x93A80)

Signed-off-by: Kwasowiec, Fabiola <fabiola.kwasowiec@intel.com>
set sync_draining_mode to true otherwise we get
glitches on the output signal because the offsets
are set to 0

Signed-off-by: Kwasowiec, Fabiola <fabiola.kwasowiec@intel.com>
FW infrastructure shall support buffering
of historic data from 1ch up to 6 channels

Signed-off-by: Kwasowiec, Fabiola <fabiola.kwasowiec@intel.com>
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from a1cec9e to e6e244c Compare January 28, 2023 16:36
FW infrastructure shall support buffering of
historic data 24bit samples in 24bit container.
with modules configuration 24/32bit

Signed-off-by: Kwasowiec, Fabiola <fabiola.kwasowiec@intel.com>
@fkwasowi
fkwasowi force-pushed the prv-fkwasowi-kpb_24_32_6ch branch from e6e244c to b93d091 Compare January 30, 2023 08:38

@abonislawski abonislawski left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let me know when this is ready

waiting only for green internal CI

@mwasko
mwasko merged commit d72d43a into thesofproject:main Jan 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.